package com.ruoyi.system.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 销售订单审核对象 sale_order_approval
 * 
 * @author ruoyi
 * @date 2025-06-16
 */
public class SaleOrderApproval extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 审核ID */
    private Long approvalId;

    /** 订单ID */
    @Excel(name = "订单ID")
    private Long orderId;

    /** 审核结果（1：通过，2：不通过） */
    @Excel(name = "审核结果", readConverterExp = "1=：通过，2：不通过")
    private String approvalResult;

    /** 审核意见 */
    @Excel(name = "审核意见")
    private String approvalOpinion;

    /** 审核人 */
    @Excel(name = "审核人")
    private String approvalBy;

    /** 审核时间 */
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    @Excel(name = "审核时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date approvalTime;

    public void setApprovalId(Long approvalId) 
    {
        this.approvalId = approvalId;
    }

    public Long getApprovalId() 
    {
        return approvalId;
    }

    public void setOrderId(Long orderId) 
    {
        this.orderId = orderId;
    }

    public Long getOrderId() 
    {
        return orderId;
    }

    public void setApprovalResult(String approvalResult) 
    {
        this.approvalResult = approvalResult;
    }

    public String getApprovalResult() 
    {
        return approvalResult;
    }

    public void setApprovalOpinion(String approvalOpinion) 
    {
        this.approvalOpinion = approvalOpinion;
    }

    public String getApprovalOpinion() 
    {
        return approvalOpinion;
    }

    public void setApprovalBy(String approvalBy) 
    {
        this.approvalBy = approvalBy;
    }

    public String getApprovalBy() 
    {
        return approvalBy;
    }

    public void setApprovalTime(Date approvalTime) 
    {
        this.approvalTime = approvalTime;
    }

    public Date getApprovalTime() 
    {
        return approvalTime;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("approvalId", getApprovalId())
            .append("orderId", getOrderId())
            .append("approvalResult", getApprovalResult())
            .append("approvalOpinion", getApprovalOpinion())
            .append("approvalBy", getApprovalBy())
            .append("approvalTime", getApprovalTime())
            .toString();
    }
}
